6 research outputs found

    Improving Scalability of Java Archive Search Engine Through Recursion Conversion and Multithreading

    Full text link
    Based on the fact that bytecode always exists on Java archive, a bytecode based Java archive search engine had been developed [1, 2]. Although this system is quite effective, it still lack of scalability since many modules apply recursive calls and this system only utilizes one core (single thread). In this research, Java archive search engine architecture is redesigned in order to improve its scalability. All recursion are converted to iterative forms although most of these modules are logically recursive and quite difficult to convert (e.g. Tarjan's strongly connected component algorithm). Recursion conversion can be conducted by following its respective recursive pattern. Each recursion is broke down to four parts (before and after actions of current and its children) and converted to iteration with the help of caller reference. This conversion mechanism improves scalability by avoiding stack overflow error caused by method calls. System scalability is also improved by applying multithreading mechanism which successfully cut off its processing time. Shorter processing time may enable system to handle larger data. Multithreading is applied on major parts which are indexer, vector space model (VSM) retriever, low-rank vector space model (LRVSM) retriever, and semantic relatedness calculator (semantic relatedness calculator also involves multiprocess). The correctness of both recursion conversion and multithread design are proved by the fact that all implementation yield similar result

    Extended Vector Space Model with Semantic Relatedness on Java Archive Search Engine

    Full text link
    Byte code as information source is a novel approach which enable Java archive search engine to be built without relying on another resources except the Java archive itself [1]. Unfortunately, its effectiveness is not considerably high since some relevant documents may not be retrieved because of vocabulary mismatch. In this research, a vector space model (VSM) is extended with semantic relatedness to overcome vocabulary mismatch issue in Java archive search engine. Aiming the most effective retrieval model, some sort of equations in retrieval models are also proposed and evaluated such as sum up all related term, substituting non-existing term with most related term, logaritmic normalization, context-specific relatedness, and low-rank query-related retrieved documents. In general, semantic relatedness improves recall as a tradeoff of its precision reduction. We also proposed a scheme to take the advantage of relatedness without affected by its disadvantage (VSM + considering non-retrieved documents as low-rank retrieved documents using semantic relatedness). This scheme assures that relatedness score should be ranked lower than standard exact-match score. This scheme yields 1.754% higher effectiveness than our standard VSM

    Complexitor: an Educational Tool for Learning Algorithm TIME Complexity in Practical Manner

    Full text link
    Based on the informal survey, learning algorithm time complexity in a theoretical manner can be rather difficult to understand. Therefore, this research proposed Complexitor, an educational tool for learning algorithm time complexity in a practical manner. Students could learn how to determine algorithm time complexity through the actual execution of algorithm implementation. They were only required to provide algorithm implementation (i.e. source code written on a particularprogramming language) and test cases to learn time complexity. After input was given, Complexitor generated execution sequence based on test cases and determine its time complexity through Pearson correlation. An algorithm time complexity with the highest correlation value toward execution sequence was assigned as its result. Based on the evaluation, it can be concluded this mechanism is quite effective for determining time complexity as long as the distribution of given input set is balanced

    AP-ASD1 : an Indonesian Desktop-based Educational Tool for Basic Data Structure Course

    Full text link
    Although there are so many avalaible data structure educational tools, it is quite difficult to find a suitable tool to aid students for learning certain course [1]. Several major impediments in determining the tool are teaching preferences, language barrier, confusing terminologies, internet dependency, various degree of material difficulty, and other environment aspects. In this research, a data structure educational tool called AP-ASD1 is developed based on basic algorithm and data structure course (ASD 1). Since AP-ASD1 is developed following course materials and not vice versa, this educational tool is guaranteed to fit in our needs. The feasibility of AP-ASD1 is evaluated based on two factors which are functionality correctness and survey. All features are correctly functioned and yield expected output whereas survey yields fairly good result (84,305% achievement rate). Based on our survey, AP-ASD1 meets eligibility standard and its features are also successfully integrated. Survey also concludes that this application is also quite effective as a supportive tool for learning basic data structure
    corecore